A global satisfaction degree method for fuzzy capacitated vehicle routing problems

There are several uncertain capacitated vehicle routing problems whose delivery costs and demands cannot be estimated using deterministic/statistical methods due to a lack of available and/or reliable data. To overcome this lack of data, third–party information coming from experts can be used to represent those uncertain costs/demands as fuzzy numbers which combined to an iterative–integer programming method and a global satisfaction degree is able to find a global optimal solution. The proposed method uses two auxiliary variables α,λ and the cumulative membership function of a fuzzy set to obtain real–valued costs and demands prior to find a deterministic solution and then iteratively find an equilibrium between fuzzy costs/demands via α and λ. The performed experiments allow us to verify the convergence of the proposed algorithm no matter the initial selection of parameters and the size of the problem/instance.


Introduction and state of the art
The Vehicle Routing Problem (VRP) is a popular class of combinatorial problems in logistics due to its applicability and relationship to last mile distribution where deterministic VRPs are among the most used in real world applications given the availability of methods to solve it (optimization, metaheuristics, etc.). Deterministic VRPs consider ideal parameters without uncertainty, but many applications are subject to different kinds of uncertainty which usually means to have a set of possible solutions which depends on the model/method to solve it. This way, uncertain VRPs (stochastic, interval-valued, fuzzy etc.) exhibit higher complexity, require extended models and specialized solution methods.
The Capacitated Vehicle Routing Problem (CVRP) is a subclass of VRPs (see Golden, Raghavan & Wasil [1], Braekers et al. [2] and Rocha et al. [3]) that includes customers, suppliers and also vehicles to shipping/transportation tasks (see Dantzig & Ramser [4], Christofides & Eilon [5] and Borčinová [6]) whose early versions consider deterministic costs/demands, so we refer to this problem as the crisp or just CVRP. Uncertain CVRPs have been addressed in different ways: Men, Jiang & Xu [7] solved a CVRP for transportation of hazardous materials with interval Type-2 fuzzy numbers, chance constrained programming and simulated annealing; Ewbank et al. [8] solved a fuzzy demands assignment problem using neural networks; Helal et al. [9] has solved a stochastic CVRP using a two-step method which combines a chance-constrained model and a stochastic model with recourse and Mańdziuk & Ś wiechowski [10] solved a dynamic CVRP with random traffic jams using probabilistic upper bounds and decision trees to compare against ant-colony, tabu and evolutionary algorithms; Hannan et al. [11] used PSO algorithms to solid waste collection problems with uncertain transportation costs and environmental impact; Pekel & Kara [12] solved location routing problems with fuzzy demands and deterministic travel times using fuzzy chance constrained programming models; Wang et al. [13] solved a two-echelon CVRP with uncertain demands using genetic algorithms. M Shan-Huen [14] solved a multi-compartment capacitated location routing problem with stochastic demands and multiple-products using tabu search; Beraldi et al. [15] solved CVRPs with stochastic demands using a probabilistic formulation involving a predefined reliability degree and Thammano & Rungwachira [16] solved complex CVRPs by efficiently generating initial solutions via a sweep method evolved with ant colony algorithms to then be debugged/relinked using local search methods.
Sometimes the costs/demands of a CVRP lack of statistical data to be estimated, so third-party information coming from experts (represented as fuzzy sets) are a possible way to obtain reliable information. While previous works are focused to either uncertain costs or demands, this paper addresses CVRPs with delivering costs and demands affected by non-probabilistic uncertainty where information coming from experts represented as fuzzy sets is the main information source. This way, we extend the fuzzy iterative optimization algorithm proposed by Figueroa-García & Tenjo-García [17], Figueroa-García [18], and Figueroa-García & López-Bello [19,20] who proposed an iterative Fuzzy Linear Programming (FLP) method to find a solution for fuzzy optimization problems with fuzzy technological parameters and continuous decision variables while the presented method solves a Fuzzy Capacitated Vehicle Routing Problem (FCVRP) which is a CVRP with fuzzy delivering costs, fuzzy demands and binary/integer decision variables i.e. a combinatorial problem.
The organization of the paper is as follows: Section 1 introduces the main topic; Section 2 presents the mathematical programming model of the CVRP; some basics on fuzzy numbers are presented in Section 3; Section 4 presents the fuzzy CVRP model and its solution method; Section 5 shows the performed experiments and Section 6 shows the final remarks of the paper.

Crisp/deterministic CVRP
A CVRP is a problem where a set of clients (customers) require goods (demands) which are sent from a set of sellers (suppliers) by using a transportation mean (vehicle) e.g. train, aircraft, ship, etc. Each vehicle is limited to a fixed/finite capacity which is usually not enough to cover all customers at once. In this problem, each customer is visited by a single vehicle starting from a depot (suppliers), covering a set of nodes (customers) to finally come back to the depot, limited to a finite amount of vehicles to cover all nodes in different routes. The aim of the CVRP is to minimize the total transportation cost of supplying all demands by covering each node by a single vehicle using routes departing from a depot (node 0). Transportation costs are composed by all operational costs inherent to deliver the required demands using a vehicle. This way, an optimal CVRP minimizes the total delivering cost namely as shown as follows.

Index sets:
, ∈ {0, 1, 2, ⋯ , } is the set of origin-destination nodes (node 0 is the depot) Parameters: ∈ ℝ + is the delivering cost to send a unit from the ℎ node to the ℎ node ∈ ℝ + is the demand required by the ℎ node ∈ ℕ is the availability of homogeneous vehicles ∈ ℕ is the capacity of a vehicle Decision variables: ∈ {0, 1} is the decision of a vehicle to traverse from the ℎ node to the ℎ node ∈ ℤ 0+ is amount of supply to be sent from the ℎ node to the ℎ node . Fig. 1 shows and example of a CVRP of 12 nodes covered by three routes to/from a single depot. CVRPs use deterministic time/distance units to define the cost of covering each customer (node) where each vehicle starts/ends from/to a depot (node 0). Eqs. (2) and (3) guarantee each customer to be covered by a single vehicle. Eqs. (4), (5) guarantee not to send more than available vehicles with equal capacity ∈ ℝ each. Eq. (6) guarantees each node to be covered once; Eq. (7) guarantees to satisfy required demands , and Eq. (8) guarantees to send the required demands by all nodes in a route. In general, the goal is to send all demands from ∈ origins to every ∈ destination using in a single vehicle with a capacity ∈ ℝ to cover the route.

Basics on fuzzy sets and numbers
A fuzzy set ̃= {( , ̃( )) | ∈ } is defined by a membership function ̃( ), ∈ which measures the membership of a value regarding a concept/word/label .  ( ) is the class of all fuzzy sets,  (ℝ) is the class of all real-valued fuzzy sets and  1 (ℝ) is the class of all fuzzy numbers. A fuzzy number ̃∈  1 (ℝ) is then defined as follows.
In probability theory, the cumulative probability function transforms any probability function into a monotonic non-decreasing measure which is very convenient in many cases. To do so, Figueroa-García & López-Bello [19,20] and Figueroa-García [18] defined its fuzzy version as shown as follows.

A proposal for solving FCVRPs
The FCVRP addressed in this paper fits into the family of FLPs that can be solved by the Soft Constraints Method (SCM) which was proposed by Zimmermann [21] & Verdegay [22], so we first introduce the SCM to then present an iterative SCM to solve FCVRPs.

The fuzzy CVRP
The mathematical programming model for a FCVRP with fuzzy delivering/shipping costs, fuzzy demands and a limited/finite amount of vehicles is described as follows.

Index sets:
, ∈ {0, 1, 2, ⋯ , } is the set of origin-destination nodes (node 0 is the depot) Parameters: ∈  1 (ℝ + ) is the fuzzy delivering cost to send a unit from the ℎ node to the ℎ nodẽ ∈  1 (ℝ + ) is the fuzzy demand required by the ℎ node ∈ ℕ is the availability of homogeneous vehicles ∈ ℕ is the capacity of a vehicle Decision variables: ∈ {0, 1} is the decision of a vehicle to traverse from the ℎ node to the ℎ node ∈ ℤ 0+ is amount of supply to be sent from the ℎ node to the ℎ node .
Eq. (15) is the total delivering cost given uncertain demands defined by experts as fuzzy sets (see Definition 1), all of them covered by a single vehicle in the route (see Eq. (16) and Eq. (17)). In general, the FCVRP considers uncertain delivering costs ̃defined as fuzzy numbers in order to cover uncertainties like climate, transportation times, road conditions, etc. that affect delivering tasks, and uncertain demands ̃w hich usually contain uncertainty induced by customers requirements, markets volatility, etc. Fig. 4 shows an FCVRP for three routes covering 12 nodes from the depot (node 0). Fig. 4 involves uncertain demands ̃a nd delivering costs ̃which are defined as fuzzy numbers. In order to be able to use the SCM, we define ã s a linear fuzzy constraint (see Fig. 5) as shown as follows.
Note that fuzzy demands as written in Eq. (21) are required to have a linear membership function (see Definition 3) since it allows us to make the equivalence between its left side ( ) and the -cut of ̃i .e. In this paper we consider an FCVRP where ̃are fuzzy costs with any membership function and ̃w ith linear membership function (see Eqs. (10), (24) and Fig. 5). Now, to obtain a monotonic decreasing function of ̃which allows to obtain smaller values of as increases, we use the complement of ̄̃.  Also note that it is convenient to use the complement of the normalized CMF of ̃i.e. ¬̄̃= 1 −̄̃since it is monotonic decreasing and minimization problems look for minimum costs (the lower the better) while satisfying constraints (the bigger the better) at once as shown in Fig. 5.

The proposed method
Fuzzy demands ̃h ave linear shapes that represents soft inequalities in the form ≳ where ( ) is the universe of discourse of ̃( see Eq. (24) and Fig. 5). On the other hand, fuzzy costs ̃can have any shape which are represented by ¬̄̃(see Definition 5 and Fig. 5) since demands and costs are in conflict of interest which can be written as the following decision making statement namely : ∶ The optimal routing decision is to cover maximum demands at a minimum cost The goal is to minimize fuzzy delivering costs ∑ ∑ , ≠̃s ubject to fuzzy demands ̃. To do so, an iterative version of the SCM to solve the FCVRP is proposed and explained in Fig. 6. Fig. 6 displays the flowchart of the proposed method which is divided into the following components: initialize by choosing a value , defining fuzzy costs, demands and the admissible error , then a second step computes values ( ), ̌( ), ̂( ) needed to obtain the optimal value of the SCM namely * which is required to evaluate convergence of the method by computing | * − | so if it is lesser than then the algorithm stops, but if | * − | is greater than then is updated with the obtained * , and the process is repeated until * ≈ i.e. | * − | < which is the point where where ( ) = ∑ ∑ , ≠ ( ) . -Thus, solve the following LP model: . .

3-Convergence:
-If * = then stop and return * as the overall satisfaction degree of ̃, ̃, and ̃; if * ≠ then go to Step 1 and update = * .
Note that the set ̃( ) is a function of i.e. ( ) = ∑ ∑ , ≠ ( ) , ∈ [0, 1] that represents the minimum delivering cost with a highest value given by ̌( ) and a lowest value given by ̂( ) for a given ∈ [0, 1]. On the other hand, the demands ̃g et its highest value at ̂a nd its lowest value at ̌. Also note that the Zimmermann's method maximizes the overall satisfaction degree between ̃( ) (through ̃( ) = ¬̄− 1 ( )) and ̃t hrough an auxiliary variable . It is important to remark that is a variable that returns crisp values of ̃which are required to solve the SCM till * = iteratively where is the overall satisfaction degree between ̃( ) and ̃( see Fig. 5).

Other approaches
The FCVRP has been addressed in the literature mostly using ranking measures for its fuzzy parameters which is a simplified deterministic solution. For instance, Zulvia, Kuo & Hu [34] proposed a method for solving a CVRP with ranked fuzzy travel times, demands and credibility measures; a similar problem was addressed by Brito et al. [35] by using a metaheuristic based in local search procedures; Kuo, Wibowo & Zulvia [36] solved a dynamic CVRP with fuzzy service times using ant colony optimization and Singh, Sharma & Chakraborty [37,38] handle fuzzy demands through a mixed fuzzy ranking/stochastic approach while our proposal keep fuzzy information via its cumulative membership function and a global satisfaction degree unlike the above approaches which solve a ranking-based instance of the FCVRP.

Application example
To illustrate how to solve FCVRPs using the proposed algorithm, 8 different instances were taken from https://www .coin -or .org /SYMPHONY / branchandcut /VRP /data /index .htm and tested using crisp methods (see Borčinová [6]) and the proposed method (see Section 4.3). First, we solve the crisp subset P-n016-k08 of the Set P composed by , ∈ {0, 1, ⋯ , 14} nodes to cover with 8 vehicles with capacity = 35 to then solve the FCVRP for a mix of triangular ( , , ) and Gaussian ( , ) fuzzy costs ̃(triangular and Gaussian are popular shapes in practical applications) and demands ̌, ̂( see Table 3 in the Appendix). Table 2 presents a summary report of the obtained results for the 8 selected instances.

Fuzzy solution
Algorithm 1 can start with any to then compute ̄̃and ( ) = ¬̄̃( ) ∀ , (see Definition 5). The optimal * = 0.564429 leads to ( * ) = 461.09, ̌( * ) = 416.79, ̂( * ) = 518.48 which is a bit more expensive than the crisp solution. The 8 optimal routes that cover all nodes are: The proposed solution covers more demands ̃v ia * while finding the highest allowable costs ̃via and ¬̄̃which means that the following system of equations (see Eqs. (27), (28) and (29)  has a solution for any ⩾ * ⇒ ( ) ⩽ ( * ) but it has no solution for < * ⇒ ( ) > ( * ). This is equivalent to say that the maximum allowable costs/demands of the FCVRP are ( * ) and ( * ) = ( ) (see Definitions 3 and 5), so cheaper costs and/or less demands than * are feasible too. This helps decision making since it provides a set of possible solutions instead of a deterministic solution. Fig. 8 shows the set ̃of optimal costs with a global optimal degree * = 0.564429. The auxiliary variable looks for the equilibrium between quantities to be sent and its costs which define the total cost of the system, so the bigger ( ) the lesser demands are covered at a total cost ( * ). Also note that * converges for any starting point of ∈ [0, 1]. Fig. 9 shows the 8 optimal routes for * .
The defuzzified values ( * ) and ( * ) are as follows: For instance, Table 1 shows all iterations , ̌( ), ̂( ) and * for three = {0.1, 0.5, 0.9}. Fig. 10 shows * for 9 different starting values = {0.1 → 0.9}, all of them converge to * = 0.564429 Finally, we have tested the algorithm by solving the 8 instances presented by Borčinová [6]. The obtained results are shown in Table 2.  We recall that all instances converge to a single * which is the global equilibrium degree between fuzzy costs and satisfaction of the demands. The crisp CVRP is convenient only for deterministic conditions, but it has no flexibility to cover uncertain demands as the presented approach does since * is the maximum degree in which demands can be covered at minimum cost and ̌( * ), ̂( * ) are the costs associated to cover minimum/maximum demands ̌a nd ̂. For instance, if we compute the total cost of the optimal crisp solution using ( * ) we obtain * = 443.71 which is cheaper than the pure deterministic solution.

Concluding remarks
The algorithm proposed by Figueroa-García [18] and Figueroa-García & López-Bello [19,20] have been extended to solve FCVRPs with satisfactory results. The optimal satisfaction degree * is a global defuzzifier for all fuzzy parameters ̃, ̃, ̃a nd it gets the maximum allowable costs and demands to be satisfied by the system while holding feasibility. The provided examples/instances illustrate the way how the iterative method solves FCRVPs whose results in the 8 selected instances show convergence to a global optimal * and subsequently to optimal values , and with better results in some instances.
The proposed algorithm deals with nonlinear fuzzy delivering costs and fuzzy demands by iterating the SCM to then obtain a maximum * which is the global optimal satisfaction degree between costs and demands, so any ( ) ⩽ ( * ) and/or ( ) ⩽ ( * ) is feasible for * . This helps practical implementations since ( * ) are the maximum allowable costs for delivering a maximum amount of demands ( * ) so the analyst can know the optimal quantities to be sent to customers at a maximum allowable cost.
The optimal solution provides the amount of vehicles to be sent, the routes to cover all demands and crisp values for ( ) ∈̃and ( ) ∈̃. The optimal * reaches equilibrium between delivery costs and satisfied demands which helps decision making since analysts are able to handle uncertain information and to provide routes to cover customers demands at a maximum allowable cost.

Further topics
CVRPs with interval-valued capacities and fuzzy time windows are natural extensions to be solved with the proposed algorithm. Also Type-2 fuzzy numbers (see Figueroa-García [40]) can help to represent other uncertainties and fuzzy decision making techniques can help to improve its application in real world scenarios (see Rivera-Niquepa et al. [41] and Wu et al. [42]).